DB 기본 개념

DB 기본 개념

DBMS, 스키마, 인스턴스, 3-스키마 아키텍처, 데이터 독립성

기본 정의

용어 정의
데이터베이스 관련된 데이터의 모음
데이터 기록할 수 있는 알려진 사실로서 암시적인 의미를 가짐
미니월드(Mini-world) 데이터베이스에 저장된 현실 세계의 일부
DBMS 전산화된 데이터베이스의 생성 및 유지 관리를 지원하는 소프트웨어
데이터베이스 시스템 DBMS 소프트웨어 + 데이터 (때로는 애플리케이션도 포함)
메타데이터(Catalog) 데이터베이스에 대한 설명 (DBMS 카탈로그에 저장)

성능 결정 요소: Disk I/O 속도

스키마 vs 인스턴스

구분 설명 비유
스키마 데이터베이스의 구조, 데이터 타입, 제약 조건 설명. 거의 변화 없음 클래스
인스턴스(상태) 특정 시간에 실제로 저장된 데이터. 계속 수정됨 객체

3-스키마 아키텍처

프로그램-데이터 독립성과 다중 사용자 뷰를 지원하기 위해 제안

외부 스키마 (External)   ← 사용자/프로그램 뷰
       ↕ 매핑
개념적 스키마 (Conceptual) ← 전체 DB 구조와 제약
       ↕ 매핑
내부 스키마 (Internal)   ← 물리적 저장 구조, 인덱스
스키마 관점 내용
내부 스키마 DBMS 구현 물리적 저장 구조, 액세스 경로(인덱스)
개념적 스키마 DB 모델러 전체 DB 구조와 제약 조건
외부 스키마 사용자/프로그램 각 사용자의 뷰 (여러 개 존재 가능)

데이터 독립성

종류 정의 예시
논리적 데이터 독립성 외부 스키마 영향 없이 개념적 스키마 변경 가능 속성 이름 변경 시 매핑 유지 → 외부 뷰 불변
물리적 데이터 독립성 개념적 스키마 변경 없이 내부 스키마 변경 가능 메모리 저장 순서 변경 시 매핑만 수정

데이터베이스 접근 방식의 주요 특성

  1. 자기 기술성(Self-describing): 메타데이터를 통해 DB 설명이 DB 내에 저장
  2. 다중 사용자 뷰 지원: 각 사용자가 자신의 관심 데이터만 볼 수 있음
  3. 공유 데이터와 트랜잭션 처리:
    • 트랜잭션: 하나의 논리적 작업 단위
    • All or Nothing: 모든 작업이 완료되지 않으면 전부 취소

DBMS의 이점

관련 개념